package io.renren.com.qywt.dto;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.renren.commons.tools.utils.DateUtils;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;


/**
* 供应商工单表
*
* @author jiaohj 15110414840@139.com
* @since 3.0 2022-08-20
*/
@Data
@ApiModel(value = "供应商工单表")
public class AftersaleWorkOrderDTO implements Serializable {
    private static final long serialVersionUID = 1L;
    @ApiModelProperty(value = "id")
    private Long id;
    @ApiModelProperty(value = "问题单状态 0: 问题单处理中 1: 问题单终结 2: 快递不与赔付终结")
    private Integer orderStatus;
    @ApiModelProperty(value = "供应商id")
    private String supplyId;
    @ApiModelProperty(value = "供应商名称")
    private String supplyName;
    @ApiModelProperty(value = "店铺id")
    private String shopId;
    @ApiModelProperty(value = "店铺名称")
    private String shopName;
    @ApiModelProperty(value = "物流公司id")
    private String deliveryId;
    @ApiModelProperty(value = "物流公司名称")
    private String deliveryName;
    @ApiModelProperty(value = "仓库id")
    private String warehouseId;
    @ApiModelProperty(value = "仓库名称")
    private String warehouseName;
    @ApiModelProperty(value = "收货人")
    private String receiverName;
    @ApiModelProperty(value = "收货人电话")
    private String receiverPhone;
    @ApiModelProperty(value = "订单号")
    private String orderNo;
    @ApiModelProperty(value = "交易平台 0：京东云仓 1：WMS  2：ERP")
    private Integer platformType;
    @ApiModelProperty(value = "物流单号")
    private String deliveryNo;
    @ApiModelProperty(value = "收件信息")
    private String receivingInfo;
    @ApiModelProperty(value = "问题描述")
    private String questionExplain;
    @ApiModelProperty(value = "问题截图")
    private String imageUrl;
    @ApiModelProperty(value = "问题类型 0:催单 1:拦截 2:走件异常 3:修改收件信息 4:商品破损/瑕疵问题 5:显示签收未收到货 6:收货少货/错货 7:无理由拒收退回 8:双面单 9:空包 10:丢件 11:破损拒收 12:满沁补发标 13:签退件签收核实 14:错发 15:少发 16:多发 17:核实重量 18:快递反馈其他异常")
    private Integer problemType;
    @ApiModelProperty(value = "入库单号")
    private String storageNo;
    @ApiModelProperty(value = "留言")
    private String message;
    @ApiModelProperty(value = "附件")
    private String attachment;
    @ApiModelProperty(value = "破损商品属性")
    private Integer attribute;
    @ApiModelProperty(value = "破损商品价值")
    private BigDecimal wornValue;
    @ApiModelProperty(value = "破损商品成本")
    private BigDecimal wornCost;
    @ApiModelProperty(value = "退回/寄回快递单号")
    private String returnNo;
    @ApiModelProperty(value = "顾客要求退款金额")
    private BigDecimal refundFee;
    @ApiModelProperty(value = "是否少件")
    private Integer lackFlag;
    @ApiModelProperty(value = "顾客需求")
    private String demand;
    @ApiModelProperty(value = "寄回运费")
    private BigDecimal returnFee;
    @ApiModelProperty(value = "其他")
    private String other;
    @ApiModelProperty(value = "顾客支付价")
    private BigDecimal payFee;
    @ApiModelProperty(value = "成本价")
    private BigDecimal costFee;
    @ApiModelProperty(value = "正确收件信息")
    private String receiptInfo;
    @ApiModelProperty(value = "商品价值")
    private BigDecimal prodValue;
    @ApiModelProperty(value = "少件商品价值")
    private BigDecimal fewValue;
    @ApiModelProperty(value = "补发单号")
    private String reissueNo;
    @ApiModelProperty(value = "需求")
    private String otherDemand;
    @ApiModelProperty(value = "单据号")
    private String docNo;
    @ApiModelProperty(value = "状态  0：停用   1：正常")
    private Integer status;
    @ApiModelProperty(value = "租户编码")
    private Long tenantCode;
    @ApiModelProperty(value = "备注")
    private String remark;
    @ApiModelProperty(value = "删除标识  0：未删除    1：删除")
    private Integer delFlag;
    @ApiModelProperty(value = "创建者")
    private Long creator;
    @ApiModelProperty(value = "创建时间")
    @JsonFormat(pattern = DateUtils.DATE_TIME_PATTERN)
    private Date createDate;
    @ApiModelProperty(value = "更新者")
    private Long updater;
    @ApiModelProperty(value = "更新时间")
    @JsonFormat(pattern = DateUtils.DATE_TIME_PATTERN)
    private Date updateDate;
    @ApiModelProperty(value = "商品明细")
    private List<AftersaleProdDetailDTO> prodDetailDTOList=new ArrayList<>();

}